package scala

import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.mllib.linalg.Vectors
import org.apache.spark.mllib.regression.LabeledPoint
import org.apache.spark.mllib.util.MLUtils

/**
  * 项目名称:spark-learn<br>
  * 包名:scala<br>
  * 用于:spark-learn<br>
  * 创建时间:2019年03月16日<br>
  * 更新时间:2019年03月16日<br>
  *
  * @author :lds（创建人）<br>
  * @version :v1.0（版本号）<br>
  * @since jdk1.8
  */
object LabeledPointTest {

  def main(args: Array[String]): Unit = {
    //建立密集向量
    val vd = Vectors.dense(2,0,6)
    //对密集向量建立标记点
    val pos = LabeledPoint(1,vd)
    //打印标记
    println(pos.features)
    val vs = Vectors.sparse(4,Array(0,1,2,3),Array(9,5,2,7))
    val neg = LabeledPoint(2,vs)
    println(neg.features)
    println(neg.label)

    //加载数据文件中的Label
    val conf = new SparkConf()
    conf.setMaster("local").setAppName("LabeledPointTest")
    val sc = new SparkContext(conf)

    val mu = MLUtils.loadLibSVMFile(sc,"conf\\loadLibSVMFile.txt")
    mu.foreach(println)

  }

}
